package com.atde._04_structural_design_patterns.flyweight;


/**
 * @BelongsProject: hsp_java_design_mode
 * @BelongsPackage: com.atde._04_structural_design_patterns.flyweight
 * @Author: Del
 * @CreateTime: 2025-06-23  15:07
 * @Description: 享元模式的具体实现类，用于表示具有共享状态的网站实例。
 * 此类通过内部状态（type）来区分不同的网站发布形式，并提供统一的行为实现。
 * 通过外部状态（user）来确定网站实例的访问者，并执行相应的行为。
 * @Version: 1.0
 */
public class ConcreteWebSite extends WebSite{

    // 网站发布的形式（类型） 它就是 共享的部分
    private String type = "";


    public ConcreteWebSite(String type) {
        this.type = type;
    }

    @Override
    public void use(User user) {
        System.out.println("用户：" + user.getName() + ", 网站发布形式：" + type);
    }
}
